#pragma once

#include "IGraphic.h"
#include "ILightSystem.h"

class IEffectGraphic : public IGraphic
{
public:
	virtual void						SetZDelta( float Z ) = 0;
	virtual void						SetTextureMatrix( uint32 uTextStage, const CMatrix* pMatrix ) = 0;
	virtual void						GetLightSystem( void** ppLightSystem ) = 0;
	virtual void						GetCamera( void** ppCamera ) = 0;
	virtual CMatrix*					GetRenderStack( ARKRS RenderStyle,
														IArkGraphicUnknown* Text0,
														IArkGraphicUnknown* Text1,
														ARKPRIMITIVETYPE PrimitiveType, 
														UINT VertexNum, 
														UINT PrimitiveCount,
														DWORD VerFormat,
														UINT VerStride,
														void** ppVB, 
														void** ppIB,
														void** ppRS = NULL ) = 0;

};